Hey there!

Welcome to my website! My name is Zach Steinberg. I'm a newly-minted web developer, ready for anything I can sink my teeth into. I have a passion for creativity, and I truly enjoy applying that passion toward web development with the goal of crafting beautiful and user-friendly websites.

Zach waving hello memoji

Hey there!

Welcome to my website! My name is Zach Steinberg. I'm a newly-minted web developer, ready for anything I can sink my teeth into.

I have a passion for creativity, and I truly enjoy applying that passion toward web development with the goal of crafting beautiful and user-friendly websites.
Zach waving hello memoji

More About Me

I see every bit of code I write as an opportunity to build something interesting, engaging, exciting and/or fun. In my opinion, a project isn't complete unless it is user-friendly, serves its intended purpose(s), and looks good while doing it. With an eye for design and a zest for solving complex problems, I strive to create seamless and responsive digital experiences.

My journey into the world of web development began a couple years ago. Since I received my first computer at thirteen years old, I have always wanted to know how to make websites. After college, I went to work in the real estate sector, however after moving with my wife from my hometown to a new market and finding myself at a point where I had essentially hit a reset switch on that career, I decided it would be a good opportunity to make a change and pursue web development as a new career. Since I began learning, I haven't looked back or regretted my choice. In fact, my only real regret is that I didn't go down this path sooner. C'est la vie!

I greatly enjoy constructing the user-facing portion of a website using HTML, CSS and JavaScript, however I also understand the back-end needs of a modern website, making use of MongoDB as well as its ancillary technologies such as Mongoose to build robust and scalable web applications and databases, to provide a rich, full-fledged experience for users of a website.

I am a people-person and look forward to working closely with clients and cross-functional teams to transform ideas into tangible, engaging digital solutions. Whether it's revamping an existing website or starting from scratch, I approach each project with enthusiasm and a commitment to delivering high-quality results. I'm always open to new challenges and eager to contribute my skills to projects that make a positive impact.

In addition to my technical skills, I value clean and efficient code, adhering to best practices and industry standards. I believe that great code is not only functional but also easy to understand and maintain.

When I'm not coding, you can find me on the trail, multi-day backpacking with my wife or enjoying a quick day-trip outing, exploring the many delicious culinary options around the Greater Portland Metro Area, or simply indulging in a good, warm (not too hot!) cup of hot chocolate.

Thank you for stopping by, and I look forward to the opportunity to put my skills to use toward you or your company's next web development project! Please reach out via the contact form below if you would like to talk, or just to learn more about me. :)

Skills

Zach wondering memoji
HTML 5
CSS 3
Bootstrap
JavaScript
EJS
NPM
Node.js
Express.js
React
Vite
Axios
MongoDB
Mongoose
Passport.js
JSON Web Token
Heroku
Zach giving a thumbs up
Zach wondering memoji
EJS
NPM
Node.js
Express.js
React
Vite
Axios
MongoDB
Mongoose
Passport.js
JSON Web Token
Heroku
Zach giving a thumbs up

My Projects

Get It Done!

Notepad image

Get It Done! is a skeuomorphic to-do list web application with a moveable, built-in calculator. It uses HTML, CSS and JavaScript, plus dynamic templating via EJS, server functionality via Node.js, as well as a database via MongoDB and Mongoose, with a focus on keeping the user interface clean and simple, so as to stay out of the way of the user and let them focus on... getting it done!

This is my first web application! Through building this application, I really began to get a sense for how exciting it would be to work on a real web application used by people in their personal and professional pursuits.

Game Box

Game box image

This is a fun little web application built using the React framework that presents the user with a rough/limited mock-up of an Aqua-style OS X environment and three mini-games. This project became a bit of a runaway train for me. It originally started as only one game, Reaction Time Test. I decided to make the main test button have an Aqua-style appearance, and it really snowballed from there. I realized I needed to come up with a design for the rest of the application. So, why not keep the theme going?

Once I had designed the Reaction Time Test app to fully look like an Aqua-style OS X window, it seemed only fitting to put a static, non-interactive menubar above it. Once I had done that, I figured I might as well make it functional. And, of course, I might as well build out window dragging functionality. And, rightfully so, window resizing functionality. And how could I forget window-layering functionality! And then functional traffic light buttons for the title bars. And desktop icons. Who could forget those? And then surely this all needs a dock! How else could a user re-open a closed window? The horror!

At this point, I felt silly just leaving this all as-is with only one "application", so I built two more "mini-applications" that had been kicking around in my head, Speed Clicker, which is very derivative of Reaction Time Test, and Off The Wall, a very simple ball game. To top it all off, I figured a System Preferences application was needed. Afterall, I had to give a user some way to update their username and/or password. And I couldn't leave the System Preferences application with only one settings pane, so I built a pane for time settings and another for desktop wallpaper settings.

I really enjoyed working through the logic involved in the functionality of this application as well as designing it to imitate the famous Aqua UI appearance and some very limited functionality of early OS X versions.

Did I Watch That?!?!

Television image

Have you ever sat down to watch a TV show but you can't remember where you left off? You know you were in season 3 of that killer comedy or edge-of-your-seat drama, but you aren't sure which episode you last watched. Then you take a guess and launch a random episode. Nope! That's not it. You've already seen that one. Or worse, you get an unwanted preview of an episode you haven't watched yet. Spoiler alert! Well, search no more. Simply keep Did I Watch That?!?! open on your phone, tablet or computer when you watch TV shows, and mark each episode off as you watch it. Never guess again!

I'm not much of a movie watcher, but I absolutely love watching all sorts of TV shows. Often, I'll take a break from a show for a few days or more, and when I come back to it, I can't remember where I left off. So, I built this web application to solve that problem.

This was a really exciting build for me, again making use of the React framework, and additionally gave me some good experience working with an external, 3rd party API to retrive different types of data, sanitize it and use it.

Many thanks to the wonderful folks at TV Maze for making their API available for free for small projects!

Get In Touch!

Zach suggesting you contact him
Zach suggesting you contact him
Zach suggesting you contact him